package xin.marcher.module.construction.service;

import xin.marcher.module.common.core.PageResult;
import xin.marcher.module.construction.domain.dto.BuyerInfoDTO;
import xin.marcher.module.construction.domain.dto.BuyerListDTO;
import xin.marcher.module.construction.domain.dto.BuyerResultDTO;
import xin.marcher.module.construction.domain.request.BuyerRequest;
import xin.marcher.module.construction.domain.request.QueryBuyerListRequest;
import xin.marcher.module.construction.domain.request.QueryBuyerPageRequest;

/**
 * 买手服务
 */
public interface BuyerService {

    /**
     * 新增/修改买手信息
     *
     * @param request
     * @return xin.marcher.module.construction.domain.dto.BuyerResultDTO
     */
    BuyerResultDTO saveBuyer(BuyerRequest request);

    /**
     * 查询买手信息
     *
     * @param request
     * @return xin.marcher.module.construction.domain.dto.BuyerListDTO
     */
    BuyerListDTO getBuyerInfo(QueryBuyerListRequest request);

    /**
     * 查询买手信息
     *
     * @param request
     * @return xin.marcher.module.common.core.PageResult<xin.marcher.module.construction.domain.dto.BuyerInfoDTO>
     */
    PageResult<BuyerInfoDTO> getBuyerInfoPage(QueryBuyerPageRequest request);
}
